<?


/**
 * Gtk窗体 创建器
 * 此文件根据 Glade窗口模版文件 自动产生，当 原Glade文件更改后，此文件也会及时重建。
 *
 * !注意：此文件由 JCAT 框架自动产生、维护，任何情况下都不应该手工编辑此文件，以免 JCAT 框架维护此文件时丢弃手工更改的内容。
 *
 * @author	JCAT_UIGtkGlade
 * @create	2008.10.31 14:44:39
 * @access	public
 */
class JCAT_GtkGlade_9e94585f4db6ab893cf1477ecf9d13e2 extends JCAT_UIGtkWidgetCreator
{
	// 公共方法 ///////////////////////////////////////////////////////////
	/**
	 * what's this
	 * 
	 * @access	public
	 * @return	array
	 */
	public function JCAT_GtkGlade_9e94585f4db6ab893cf1477ecf9d13e2()
	{
		$this->arrWidgetTree = unserialize('a:2:{s:26:"GtkWindow:JJ_SessionWindow";a:1:{s:22:"GtkVBox:JJ_SessionView";a:2:{s:19:"GtkMenuBar:menubar1";a:1:{s:21:"GtkMenuItem:menuitem1";a:1:{s:13:"GtkMenu:menu1";a:3:{s:21:"GtkMenuItem:menuitem5";a:0:{}s:39:"GtkSeparatorMenuItem:separatormenuitem1";a:0:{}s:29:"GtkMenuItem:MenuItemCloseView";a:0:{}}}}s:15:"GtkFrame:frame1";a:2:{s:23:"GtkAlignment:alignment1";a:1:{s:15:"GtkVBox:vbox100";a:1:{s:13:"GtkVBox:vbox2";a:2:{s:19:"GtkLabel:LabContact";a:0:{}s:24:"GtkVPaned:VPanedMessages";a:2:{s:13:"GtkVBox:vbox3";a:2:{s:40:"GtkScrolledWindow:SessionHistoryScrolled";a:1:{s:26:"GtkTextView:MessageHistory";a:0:{}}s:23:"GtkLabel:InputingNotify";a:0:{}}s:15:"GtkTable:table1";a:1:{s:13:"GtkVBox:vbox4";a:2:{s:13:"GtkHBox:hbox2";a:2:{s:33:"GtkScrolledWindow:scrolledwindow3";a:1:{s:24:"GtkTextView:SessionInput";a:0:{}}s:25:"GtkVButtonBox:vbuttonbox1";a:1:{s:13:"GtkVBox:vbox5";a:2:{s:17:"GtkButton:button2";a:0:{}s:17:"GtkButton:button1";a:0:{}}}}s:15:"GtkLabel:label2";a:0:{}}}}}}}s:15:"GtkLabel:label1";a:0:{}}}}s:23:"GtkWindow:JJ_FaceWindow";a:1:{s:13:"GtkVBox:vbox1";a:2:{s:25:"GtkHButtonBox:hbuttonbox4";a:1:{s:17:"GtkButton:button8";a:0:{}}s:21:"GtkIconView:FaceTable";a:0:{}}}}') ;
		$this->arrWidgetIds = unserialize('a:34:{s:16:"JJ_SessionWindow";s:9:"GtkWindow";s:14:"JJ_SessionView";s:7:"GtkVBox";s:8:"menubar1";s:10:"GtkMenuBar";s:9:"menuitem1";s:11:"GtkMenuItem";s:5:"menu1";s:7:"GtkMenu";s:9:"menuitem5";s:11:"GtkMenuItem";s:18:"separatormenuitem1";s:20:"GtkSeparatorMenuItem";s:17:"MenuItemCloseView";s:11:"GtkMenuItem";s:6:"frame1";s:8:"GtkFrame";s:10:"alignment1";s:12:"GtkAlignment";s:7:"vbox100";s:7:"GtkVBox";s:5:"vbox2";s:7:"GtkVBox";s:10:"LabContact";s:8:"GtkLabel";s:14:"VPanedMessages";s:9:"GtkVPaned";s:5:"vbox3";s:7:"GtkVBox";s:22:"SessionHistoryScrolled";s:17:"GtkScrolledWindow";s:14:"MessageHistory";s:11:"GtkTextView";s:14:"InputingNotify";s:8:"GtkLabel";s:6:"table1";s:8:"GtkTable";s:5:"vbox4";s:7:"GtkVBox";s:5:"hbox2";s:7:"GtkHBox";s:15:"scrolledwindow3";s:17:"GtkScrolledWindow";s:12:"SessionInput";s:11:"GtkTextView";s:11:"vbuttonbox1";s:13:"GtkVButtonBox";s:5:"vbox5";s:7:"GtkVBox";s:7:"button2";s:9:"GtkButton";s:7:"button1";s:9:"GtkButton";s:6:"label2";s:8:"GtkLabel";s:6:"label1";s:8:"GtkLabel";s:13:"JJ_FaceWindow";s:9:"GtkWindow";s:5:"vbox1";s:7:"GtkVBox";s:11:"hbuttonbox4";s:13:"GtkHButtonBox";s:7:"button8";s:9:"GtkButton";s:9:"FaceTable";s:11:"GtkIconView";}') ;
		$this->sTemplatePath = '/home/alee/Project/JeCat/jj/Resource/UITemplate/template.JJ_SessionWindow.glade' ;
	}


	// 私有方法 ///////////////////////////////////////////////

	/**
	 * 创建窗体 GtkWindow:JJ_SessionWindow
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkWindow
	 */
	protected function Create_JJ_SessionWindow(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$JJ_SessionWindow = new GtkWindow() ;

		$JJ_SessionWindow->set_position(Gtk::WIN_POS_CENTER) ;

		$JJ_SessionView = $this->GetWidget('JJ_SessionView',&$arrObjectForSignal) ;
		$JJ_SessionWindow->add($JJ_SessionView) ;

		$JJ_SessionWindow->set_size_request( 400, 460 ) ;
		$JJ_SessionWindow->connect( 'key_release_event', array($TheView,'OnWindowKeyRelease')  ) ;
		$JJ_SessionWindow->connect( 'delete_event', array($TheView,'OnCloseWindow')  ) ;


		// 窗体名称
		if( isset($JJ_SessionWindow) and $JJ_SessionWindow->get_name()=='GtkWindow' )
		{
			$JJ_SessionWindow->set_name('JJ_SessionWindow') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($JJ_SessionWindow) and !$JJ_SessionWindow->get_data('creator') )
		{
			$JJ_SessionWindow->set_data('creator',$this) ;
		}
					
		return $JJ_SessionWindow ;
	}



	/**
	 * 创建窗体 GtkVBox:JJ_SessionView
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkVBox
	 */
	protected function Create_JJ_SessionView(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$JJ_SessionView = new GtkVBox() ;
		$JJ_SessionView->set_homogeneous(false) ;
		$JJ_SessionView->set_spacing(0) ;

		$menubar1 = $this->GetWidget('menubar1',&$arrObjectForSignal) ;
		$JJ_SessionView->pack_start( $menubar1, false, true, 0 ) ;


		$frame1 = $this->GetWidget('frame1',&$arrObjectForSignal) ;
		$JJ_SessionView->pack_start( $frame1, true, true, 0 ) ;

		$JJ_SessionView->set_visible( true, false ) ;


		// 窗体名称
		if( isset($JJ_SessionView) and $JJ_SessionView->get_name()=='GtkVBox' )
		{
			$JJ_SessionView->set_name('JJ_SessionView') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($JJ_SessionView) and !$JJ_SessionView->get_data('creator') )
		{
			$JJ_SessionView->set_data('creator',$this) ;
		}
					
		return $JJ_SessionView ;
	}



	/**
	 * 创建窗体 GtkMenuBar:menubar1
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkMenuBar
	 */
	protected function Create_menubar1(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$menubar1 = new GtkMenuBar() ;

		$menuitem1 = self::GetWidget('menuitem1',&$arrObjectForSignal) ;

		$menubar1->append($menuitem1) ;
		$menubar1->set_visible( true, false ) ;


		// 窗体名称
		if( isset($menubar1) and $menubar1->get_name()=='GtkMenuBar' )
		{
			$menubar1->set_name('menubar1') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($menubar1) and !$menubar1->get_data('creator') )
		{
			$menubar1->set_data('creator',$this) ;
		}
					
		return $menubar1 ;
	}



	/**
	 * 创建窗体 GtkMenuItem:menuitem1
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkMenuItem
	 */
	protected function Create_menuitem1(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$menuitem1 = new GtkMenuItem('文件(_F)') ;
		$menuitem1->child->set_use_underline(1) ;

		$menu1 = self::GetWidget('menu1',&$arrObjectForSignal) ;
		$menuitem1->set_submenu($menu1) ;
		$menuitem1->set_visible( true, false ) ;


		// 窗体名称
		if( isset($menuitem1) and $menuitem1->get_name()=='GtkMenuItem' )
		{
			$menuitem1->set_name('menuitem1') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($menuitem1) and !$menuitem1->get_data('creator') )
		{
			$menuitem1->set_data('creator',$this) ;
		}
					
		return $menuitem1 ;
	}



	/**
	 * 创建窗体 GtkMenu:menu1
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkMenu
	 */
	protected function Create_menu1(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$menu1 = new GtkMenu() ;

		$menuitem5 = self::GetWidget('menuitem5',&$arrObjectForSignal) ;

		$menu1->append($menuitem5) ;

		$separatormenuitem1 = self::GetWidget('separatormenuitem1',&$arrObjectForSignal) ;

		$menu1->append($separatormenuitem1) ;

		$MenuItemCloseView = self::GetWidget('MenuItemCloseView',&$arrObjectForSignal) ;

		$menu1->append($MenuItemCloseView) ;
		$menu1->set_visible( true, false ) ;


		// 窗体名称
		if( isset($menu1) and $menu1->get_name()=='GtkMenu' )
		{
			$menu1->set_name('menu1') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($menu1) and !$menu1->get_data('creator') )
		{
			$menu1->set_data('creator',$this) ;
		}
					
		return $menu1 ;
	}



	/**
	 * 创建窗体 GtkMenuItem:menuitem5
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkMenuItem
	 */
	protected function Create_menuitem5(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$menuitem5 = new GtkMenuItem('查看聊天记录') ;
		$menuitem5->child->set_use_underline(1) ;
		$menuitem5->set_visible( true, false ) ;
		$menuitem5->connect( 'activate', array($TheView,'OnOpenSessionHistoryDialog')  ) ;


		// 窗体名称
		if( isset($menuitem5) and $menuitem5->get_name()=='GtkMenuItem' )
		{
			$menuitem5->set_name('menuitem5') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($menuitem5) and !$menuitem5->get_data('creator') )
		{
			$menuitem5->set_data('creator',$this) ;
		}
					
		return $menuitem5 ;
	}



	/**
	 * 创建窗体 GtkSeparatorMenuItem:separatormenuitem1
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkSeparatorMenuItem
	 */
	protected function Create_separatormenuitem1(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$separatormenuitem1 = new GtkSeparatorMenuItem() ;
		$separatormenuitem1->set_visible( true, false ) ;


		// 窗体名称
		if( isset($separatormenuitem1) and $separatormenuitem1->get_name()=='GtkSeparatorMenuItem' )
		{
			$separatormenuitem1->set_name('separatormenuitem1') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($separatormenuitem1) and !$separatormenuitem1->get_data('creator') )
		{
			$separatormenuitem1->set_data('creator',$this) ;
		}
					
		return $separatormenuitem1 ;
	}



	/**
	 * 创建窗体 GtkMenuItem:MenuItemCloseView
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkMenuItem
	 */
	protected function Create_MenuItemCloseView(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$MenuItemCloseView = new GtkMenuItem('关闭对话窗口') ;
		$MenuItemCloseView->child->set_use_underline(1) ;
		$MenuItemCloseView->set_visible( true, false ) ;
		$MenuItemCloseView->connect_simple( 'activate', array($TheView,'ShowView') ,false ) ;


		// 窗体名称
		if( isset($MenuItemCloseView) and $MenuItemCloseView->get_name()=='GtkMenuItem' )
		{
			$MenuItemCloseView->set_name('MenuItemCloseView') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($MenuItemCloseView) and !$MenuItemCloseView->get_data('creator') )
		{
			$MenuItemCloseView->set_data('creator',$this) ;
		}
					
		return $MenuItemCloseView ;
	}



	/**
	 * 创建窗体 GtkFrame:frame1
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkFrame
	 */
	protected function Create_frame1(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$frame1 = new GtkFrame() ;
		$frame1->set_label_align(0,0.10000000149011612) ;

		$alignment1 = self::GetWidget('alignment1',$arrObjectForSignal) ;
		$frame1->add($alignment1) ;

		$label1 = self::GetWidget('label1',$arrObjectForSignal) ;
		$frame1->set_label_widget($label1) ;
		$frame1->set_visible( true, false ) ;


		// 窗体名称
		if( isset($frame1) and $frame1->get_name()=='GtkFrame' )
		{
			$frame1->set_name('frame1') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($frame1) and !$frame1->get_data('creator') )
		{
			$frame1->set_data('creator',$this) ;
		}
					
		return $frame1 ;
	}



	/**
	 * 创建窗体 GtkAlignment:alignment1
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkAlignment
	 */
	protected function Create_alignment1(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$alignment1 = new GtkAlignment() ;
		$alignment1->set_padding(0,10,10,10) ;
		$alignment1->set(0.5,0.5,1.00,1.00) ;

		$vbox100 = self::GetWidget('vbox100',$arrObjectForSignal) ;

		$alignment1->add($vbox100) ;
		$alignment1->set_visible( true, false ) ;


		// 窗体名称
		if( isset($alignment1) and $alignment1->get_name()=='GtkAlignment' )
		{
			$alignment1->set_name('alignment1') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($alignment1) and !$alignment1->get_data('creator') )
		{
			$alignment1->set_data('creator',$this) ;
		}
					
		return $alignment1 ;
	}



	/**
	 * 创建窗体 GtkVBox:vbox100
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkVBox
	 */
	protected function Create_vbox100(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$vbox100 = new GtkVBox() ;
		$vbox100->set_homogeneous(false) ;
		$vbox100->set_spacing(0) ;

		$vbox2 = $this->GetWidget('vbox2',&$arrObjectForSignal) ;
		$vbox100->pack_start( $vbox2, true, true, 0 ) ;

		$vbox100->set_visible( true, false ) ;


		// 窗体名称
		if( isset($vbox100) and $vbox100->get_name()=='GtkVBox' )
		{
			$vbox100->set_name('vbox100') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($vbox100) and !$vbox100->get_data('creator') )
		{
			$vbox100->set_data('creator',$this) ;
		}
					
		return $vbox100 ;
	}



	/**
	 * 创建窗体 GtkVBox:vbox2
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkVBox
	 */
	protected function Create_vbox2(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$vbox2 = new GtkVBox() ;
		$vbox2->set_homogeneous(false) ;
		$vbox2->set_spacing(2) ;

		$LabContact = $this->GetWidget('LabContact',&$arrObjectForSignal) ;
		$vbox2->pack_start( $LabContact, false, true, 0 ) ;


		$VPanedMessages = $this->GetWidget('VPanedMessages',&$arrObjectForSignal) ;
		$vbox2->pack_start( $VPanedMessages, true, true, 0 ) ;

		$vbox2->set_visible( true, false ) ;


		// 窗体名称
		if( isset($vbox2) and $vbox2->get_name()=='GtkVBox' )
		{
			$vbox2->set_name('vbox2') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($vbox2) and !$vbox2->get_data('creator') )
		{
			$vbox2->set_data('creator',$this) ;
		}
					
		return $vbox2 ;
	}



	/**
	 * 创建窗体 GtkLabel:LabContact
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkLabel
	 */
	protected function Create_LabContact(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$LabContact = new GtkLabel() ;

		$LabContact->set_label("") ;
		$LabContact->set_use_markup(true) ;
		$LabContact->set_alignment( 0, 0.5 ) ;
		$LabContact->set_padding( 0, 0 ) ;		$LabContact->set_visible( true, false ) ;


		// 窗体名称
		if( isset($LabContact) and $LabContact->get_name()=='GtkLabel' )
		{
			$LabContact->set_name('LabContact') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($LabContact) and !$LabContact->get_data('creator') )
		{
			$LabContact->set_data('creator',$this) ;
		}
					
		return $LabContact ;
	}



	/**
	 * 创建窗体 GtkVPaned:VPanedMessages
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkVPaned
	 */
	protected function Create_VPanedMessages(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$VPanedMessages = new GtkVPaned() ;

		$vbox3 = $this->GetWidget('vbox3',&$arrObjectForSignal) ;
		$VPanedMessages->add1( $vbox3 ) ;


		$table1 = $this->GetWidget('table1',&$arrObjectForSignal) ;
		$VPanedMessages->add2( $table1 ) ;

		$VPanedMessages->set_visible( true, false ) ;


		// 窗体名称
		if( isset($VPanedMessages) and $VPanedMessages->get_name()=='GtkVPaned' )
		{
			$VPanedMessages->set_name('VPanedMessages') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($VPanedMessages) and !$VPanedMessages->get_data('creator') )
		{
			$VPanedMessages->set_data('creator',$this) ;
		}
					
		return $VPanedMessages ;
	}



	/**
	 * 创建窗体 GtkVBox:vbox3
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkVBox
	 */
	protected function Create_vbox3(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$vbox3 = new GtkVBox() ;
		$vbox3->set_homogeneous(false) ;
		$vbox3->set_spacing(4) ;

		$SessionHistoryScrolled = $this->GetWidget('SessionHistoryScrolled',&$arrObjectForSignal) ;
		$vbox3->pack_start( $SessionHistoryScrolled, true, true, 0 ) ;


		$InputingNotify = $this->GetWidget('InputingNotify',&$arrObjectForSignal) ;
		$vbox3->pack_start( $InputingNotify, false, false, False ) ;

		$vbox3->set_visible( true, false ) ;


		// 窗体名称
		if( isset($vbox3) and $vbox3->get_name()=='GtkVBox' )
		{
			$vbox3->set_name('vbox3') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($vbox3) and !$vbox3->get_data('creator') )
		{
			$vbox3->set_data('creator',$this) ;
		}
					
		return $vbox3 ;
	}



	/**
	 * 创建窗体 GtkScrolledWindow:SessionHistoryScrolled
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkScrolledWindow
	 */
	protected function Create_SessionHistoryScrolled(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$SessionHistoryScrolled = new GtkScrolledWindow() ;
		$SessionHistoryScrolled->set_policy(Gtk::POLICY_AUTOMATIC,Gtk::POLICY_AUTOMATIC) ;

		$MessageHistory = $this->GetWidget('MessageHistory',&$arrObjectForSignal) ;
		$SessionHistoryScrolled->add_with_viewport($MessageHistory) ;
		$SessionHistoryScrolled->set_visible( true, false ) ;


		// 窗体名称
		if( isset($SessionHistoryScrolled) and $SessionHistoryScrolled->get_name()=='GtkScrolledWindow' )
		{
			$SessionHistoryScrolled->set_name('SessionHistoryScrolled') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($SessionHistoryScrolled) and !$SessionHistoryScrolled->get_data('creator') )
		{
			$SessionHistoryScrolled->set_data('creator',$this) ;
		}
					
		return $SessionHistoryScrolled ;
	}



	/**
	 * 创建窗体 GtkTextView:MessageHistory
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkTextView
	 */
	protected function Create_MessageHistory(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$MessageHistory = new GtkTextView() ;
		$aTextBuffer = new GtkTextBuffer() ;
		$MessageHistory->set_buffer($aTextBuffer) ;
		$MessageHistory->set_editable(false) ;
		$MessageHistory->set_wrap_mode(Gtk::WRAP_CHAR);
		$MessageHistory->set_visible( true, false ) ;


		// 窗体名称
		if( isset($MessageHistory) and $MessageHistory->get_name()=='GtkTextView' )
		{
			$MessageHistory->set_name('MessageHistory') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($MessageHistory) and !$MessageHistory->get_data('creator') )
		{
			$MessageHistory->set_data('creator',$this) ;
		}
					
		return $MessageHistory ;
	}



	/**
	 * 创建窗体 GtkLabel:InputingNotify
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkLabel
	 */
	protected function Create_InputingNotify(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$InputingNotify = new GtkLabel() ;

		$InputingNotify->set_label("") ;
		$InputingNotify->set_alignment( 0, 0.5 ) ;
		$InputingNotify->set_padding( 0, 0 ) ;

		// 窗体名称
		if( isset($InputingNotify) and $InputingNotify->get_name()=='GtkLabel' )
		{
			$InputingNotify->set_name('InputingNotify') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($InputingNotify) and !$InputingNotify->get_data('creator') )
		{
			$InputingNotify->set_data('creator',$this) ;
		}
					
		return $InputingNotify ;
	}



	/**
	 * 创建窗体 GtkTable:table1
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkTable
	 */
	protected function Create_table1(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$table1 = new GtkTable( 1, 1, false ) ;

		$vbox4 = $this->GetWidget('vbox4',&$arrObjectForSignal) ;
		$table1->attach($vbox4, 0,1,0,1, Gtk::EXPAND | Gtk::FILL,Gtk::EXPAND | Gtk::FILL, 0,1) ;
		$table1->set_size_request( -1, 80 ) ;
		$table1->set_visible( true, false ) ;


		// 窗体名称
		if( isset($table1) and $table1->get_name()=='GtkTable' )
		{
			$table1->set_name('table1') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($table1) and !$table1->get_data('creator') )
		{
			$table1->set_data('creator',$this) ;
		}
					
		return $table1 ;
	}



	/**
	 * 创建窗体 GtkVBox:vbox4
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkVBox
	 */
	protected function Create_vbox4(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$vbox4 = new GtkVBox() ;
		$vbox4->set_homogeneous(false) ;
		$vbox4->set_spacing(6) ;

		$hbox2 = $this->GetWidget('hbox2',&$arrObjectForSignal) ;
		$vbox4->pack_start( $hbox2, true, true, 0 ) ;


		$label2 = $this->GetWidget('label2',&$arrObjectForSignal) ;
		$vbox4->pack_start( $label2, false, true, 0 ) ;

		$vbox4->set_visible( true, false ) ;


		// 窗体名称
		if( isset($vbox4) and $vbox4->get_name()=='GtkVBox' )
		{
			$vbox4->set_name('vbox4') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($vbox4) and !$vbox4->get_data('creator') )
		{
			$vbox4->set_data('creator',$this) ;
		}
					
		return $vbox4 ;
	}



	/**
	 * 创建窗体 GtkHBox:hbox2
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkHBox
	 */
	protected function Create_hbox2(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$hbox2 = new GtkHBox() ;
		$hbox2->set_homogeneous(false) ;
		$hbox2->set_spacing(4) ;

		$scrolledwindow3 = $this->GetWidget('scrolledwindow3',&$arrObjectForSignal) ;
		$hbox2->pack_start( $scrolledwindow3, true, true, 0 ) ;


		$vbuttonbox1 = $this->GetWidget('vbuttonbox1',&$arrObjectForSignal) ;
		$hbox2->pack_start( $vbuttonbox1, false, false, False ) ;

		$hbox2->set_size_request( -1, 80 ) ;
		$hbox2->set_visible( true, false ) ;


		// 窗体名称
		if( isset($hbox2) and $hbox2->get_name()=='GtkHBox' )
		{
			$hbox2->set_name('hbox2') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($hbox2) and !$hbox2->get_data('creator') )
		{
			$hbox2->set_data('creator',$this) ;
		}
					
		return $hbox2 ;
	}



	/**
	 * 创建窗体 GtkScrolledWindow:scrolledwindow3
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkScrolledWindow
	 */
	protected function Create_scrolledwindow3(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$scrolledwindow3 = new GtkScrolledWindow() ;
		$scrolledwindow3->set_policy(Gtk::POLICY_AUTOMATIC,Gtk::POLICY_AUTOMATIC) ;

		$SessionInput = $this->GetWidget('SessionInput',&$arrObjectForSignal) ;
		$scrolledwindow3->add_with_viewport($SessionInput) ;
		$scrolledwindow3->set_size_request( -1, 80 ) ;
		$scrolledwindow3->set_visible( true, false ) ;


		// 窗体名称
		if( isset($scrolledwindow3) and $scrolledwindow3->get_name()=='GtkScrolledWindow' )
		{
			$scrolledwindow3->set_name('scrolledwindow3') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($scrolledwindow3) and !$scrolledwindow3->get_data('creator') )
		{
			$scrolledwindow3->set_data('creator',$this) ;
		}
					
		return $scrolledwindow3 ;
	}



	/**
	 * 创建窗体 GtkTextView:SessionInput
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkTextView
	 */
	protected function Create_SessionInput(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$SessionInput = new GtkTextView() ;
		$aTextBuffer = new GtkTextBuffer() ;
		$SessionInput->set_buffer($aTextBuffer) ;
		$SessionInput->set_wrap_mode(Gtk::WRAP_CHAR);
		$SessionInput->set_size_request( -1, 100 ) ;
		$SessionInput->set_visible( true, false ) ;
		$SessionInput->connect( 'focus_out_event', array($TheView,'OnTextLostFocus')  ) ;
		$SessionInput->connect( 'key_press_event', array($TheView,'OnKeyPress')  ) ;
		$SessionInput->connect( 'key_release_event', array($TheView,'OnKeyRelease')  ) ;


		// 窗体名称
		if( isset($SessionInput) and $SessionInput->get_name()=='GtkTextView' )
		{
			$SessionInput->set_name('SessionInput') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($SessionInput) and !$SessionInput->get_data('creator') )
		{
			$SessionInput->set_data('creator',$this) ;
		}
					
		return $SessionInput ;
	}



	/**
	 * 创建窗体 GtkVButtonBox:vbuttonbox1
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkVButtonBox
	 */
	protected function Create_vbuttonbox1(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$vbuttonbox1 = new GtkVButtonBox() ;
		$vbuttonbox1->set_homogeneous(false) ;
		$vbuttonbox1->set_spacing(0) ;
		$vbuttonbox1->set_layout(Gtk::BUTTONBOX_END) ;

		$vbox5 = $this->GetWidget('vbox5',&$arrObjectForSignal) ;
		$vbuttonbox1->pack_start( $vbox5, true, true, 0 ) ;

		$vbuttonbox1->set_visible( true, false ) ;


		// 窗体名称
		if( isset($vbuttonbox1) and $vbuttonbox1->get_name()=='GtkVButtonBox' )
		{
			$vbuttonbox1->set_name('vbuttonbox1') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($vbuttonbox1) and !$vbuttonbox1->get_data('creator') )
		{
			$vbuttonbox1->set_data('creator',$this) ;
		}
					
		return $vbuttonbox1 ;
	}



	/**
	 * 创建窗体 GtkVBox:vbox5
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkVBox
	 */
	protected function Create_vbox5(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$vbox5 = new GtkVBox() ;
		$vbox5->set_homogeneous(false) ;
		$vbox5->set_spacing(4) ;

		$button2 = $this->GetWidget('button2',&$arrObjectForSignal) ;
		$vbox5->pack_start( $button2, true, true, 0 ) ;


		$button1 = $this->GetWidget('button1',&$arrObjectForSignal) ;
		$vbox5->pack_start( $button1, true, true, 0 ) ;

		$vbox5->set_visible( true, false ) ;


		// 窗体名称
		if( isset($vbox5) and $vbox5->get_name()=='GtkVBox' )
		{
			$vbox5->set_name('vbox5') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($vbox5) and !$vbox5->get_data('creator') )
		{
			$vbox5->set_data('creator',$this) ;
		}
					
		return $vbox5 ;
	}



	/**
	 * 创建窗体 GtkButton:button2
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkButton
	 */
	protected function Create_button2(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$button2 = new GtkButton() ;
		$button2->set_label('插入表情') ;
		$button2->set_size_request( -1, 30 ) ;
		$button2->set_visible( true, false ) ;
		$button2->connect( 'clicked', array($TheView,'OnInsertFace')  ) ;


		// 窗体名称
		if( isset($button2) and $button2->get_name()=='GtkButton' )
		{
			$button2->set_name('button2') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($button2) and !$button2->get_data('creator') )
		{
			$button2->set_data('creator',$this) ;
		}
					
		return $button2 ;
	}



	/**
	 * 创建窗体 GtkButton:button1
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkButton
	 */
	protected function Create_button1(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$button1 = new GtkButton() ;
		$button1->set_label('发送') ;
		$button1->set_size_request( 70, 75 ) ;
		$button1->set_visible( true, false ) ;
		$button1->connect( 'clicked', array($TheView,'OnSend')  ) ;


		// 窗体名称
		if( isset($button1) and $button1->get_name()=='GtkButton' )
		{
			$button1->set_name('button1') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($button1) and !$button1->get_data('creator') )
		{
			$button1->set_data('creator',$this) ;
		}
					
		return $button1 ;
	}



	/**
	 * 创建窗体 GtkLabel:label2
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkLabel
	 */
	protected function Create_label2(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$label2 = new GtkLabel() ;

		$label2->set_label("<span color=\"#888888\">发送快捷键：Shift + Enter</span>") ;
		$label2->set_use_markup(true) ;
		$label2->set_alignment( 0, 0.5 ) ;
		$label2->set_padding( 0, 0 ) ;		$label2->set_visible( true, false ) ;


		// 窗体名称
		if( isset($label2) and $label2->get_name()=='GtkLabel' )
		{
			$label2->set_name('label2') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($label2) and !$label2->get_data('creator') )
		{
			$label2->set_data('creator',$this) ;
		}
					
		return $label2 ;
	}



	/**
	 * 创建窗体 GtkLabel:label1
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkLabel
	 */
	protected function Create_label1(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$label1 = new GtkLabel() ;

		$label1->set_label("") ;
		$label1->set_use_markup(true) ;
		$label1->set_alignment( 0.5, 0.5 ) ;
		$label1->set_padding( 0, 0 ) ;		$label1->set_visible( true, false ) ;


		// 窗体名称
		if( isset($label1) and $label1->get_name()=='GtkLabel' )
		{
			$label1->set_name('label1') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($label1) and !$label1->get_data('creator') )
		{
			$label1->set_data('creator',$this) ;
		}
					
		return $label1 ;
	}



	/**
	 * 创建窗体 GtkWindow:JJ_FaceWindow
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkWindow
	 */
	protected function Create_JJ_FaceWindow(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$JJ_FaceWindow = new GtkWindow() ;

		$JJ_FaceWindow->set_resizable(false) ;
		$JJ_FaceWindow->set_position(Gtk::WIN_POS_MOUSE) ;
		$JJ_FaceWindow->set_destroy_with_parent(true) ;
		$JJ_FaceWindow->set_skip_taskbar_hint(true) ;
		$JJ_FaceWindow->set_skip_pager_hint(true) ;
		$JJ_FaceWindow->set_decorated(false) ;

		$vbox1 = $this->GetWidget('vbox1',&$arrObjectForSignal) ;
		$JJ_FaceWindow->add($vbox1) ;



		// 窗体名称
		if( isset($JJ_FaceWindow) and $JJ_FaceWindow->get_name()=='GtkWindow' )
		{
			$JJ_FaceWindow->set_name('JJ_FaceWindow') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($JJ_FaceWindow) and !$JJ_FaceWindow->get_data('creator') )
		{
			$JJ_FaceWindow->set_data('creator',$this) ;
		}
					
		return $JJ_FaceWindow ;
	}



	/**
	 * 创建窗体 GtkVBox:vbox1
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkVBox
	 */
	protected function Create_vbox1(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$vbox1 = new GtkVBox() ;
		$vbox1->set_homogeneous(false) ;
		$vbox1->set_spacing(0) ;

		$hbuttonbox4 = $this->GetWidget('hbuttonbox4',&$arrObjectForSignal) ;
		$vbox1->pack_start( $hbuttonbox4, false, false, False ) ;


		$FaceTable = $this->GetWidget('FaceTable',&$arrObjectForSignal) ;
		$vbox1->pack_start( $FaceTable, true, true, 0 ) ;

		$vbox1->set_visible( true, false ) ;


		// 窗体名称
		if( isset($vbox1) and $vbox1->get_name()=='GtkVBox' )
		{
			$vbox1->set_name('vbox1') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($vbox1) and !$vbox1->get_data('creator') )
		{
			$vbox1->set_data('creator',$this) ;
		}
					
		return $vbox1 ;
	}



	/**
	 * 创建窗体 GtkHButtonBox:hbuttonbox4
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkHButtonBox
	 */
	protected function Create_hbuttonbox4(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$hbuttonbox4 = new GtkHButtonBox() ;
		$hbuttonbox4->set_homogeneous(false) ;
		$hbuttonbox4->set_spacing(0) ;
		$hbuttonbox4->set_layout(Gtk::BUTTONBOX_START) ;

		$button8 = $this->GetWidget('button8',&$arrObjectForSignal) ;
		$hbuttonbox4->pack_start( $button8, false, false, False ) ;

		$hbuttonbox4->set_visible( true, false ) ;


		// 窗体名称
		if( isset($hbuttonbox4) and $hbuttonbox4->get_name()=='GtkHButtonBox' )
		{
			$hbuttonbox4->set_name('hbuttonbox4') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($hbuttonbox4) and !$hbuttonbox4->get_data('creator') )
		{
			$hbuttonbox4->set_data('creator',$this) ;
		}
					
		return $hbuttonbox4 ;
	}



	/**
	 * 创建窗体 GtkButton:button8
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkButton
	 */
	protected function Create_button8(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$button8 = new GtkButton() ;
		$button8->set_use_stock(true) ;
		$button8->set_label('gtk-cancel') ;
		$button8->set_size_request( 30, -1 ) ;
		$button8->set_visible( true, false ) ;
		$button8->connect( 'clicked', array($TheView,'OnCloseWindow')  ) ;


		// 窗体名称
		if( isset($button8) and $button8->get_name()=='GtkButton' )
		{
			$button8->set_name('button8') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($button8) and !$button8->get_data('creator') )
		{
			$button8->set_data('creator',$this) ;
		}
					
		return $button8 ;
	}



	/**
	 * 创建窗体 GtkIconView:FaceTable
	 * 
	 * @access	private
	 * @param	$arrObjectForSignal=array()	array	用于响应 Signal 事件的对象, 数组键名做为 对象的变量名
	 * @return	GtkIconView
	 */
	protected function Create_FaceTable(array $arrObjectForSignal=array())
	{
		JCAT_ASSERT::ASSERT_ISTHESE( $arrObjectForSignal, array('array:object,null') ) ;

		// 声明 用于响应 Signal 事件的对象的引用
		foreach( $arrObjectForSignal as $sObName=>$aObject )
		{
			if( $aObject )
				$$sObName = $aObject ;
		}



		$FaceTable = new GtkIconView() ;
		$FaceTable->set_columns(10) ;
		$FaceTable->set_row_spacing(0) ;
		$FaceTable->set_column_spacing(0) ;
		$FaceTable->set_margin(0) ;
		$FaceTable->set_visible( true, false ) ;
		$FaceTable->connect( 'button_release_event', array($TheView,'OnSelectFace')  ) ;


		// 窗体名称
		if( isset($FaceTable) and $FaceTable->get_name()=='GtkIconView' )
		{
			$FaceTable->set_name('FaceTable') ;
		}
		
		// 在 窗体中 记录 Creator
		if( isset($FaceTable) and !$FaceTable->get_data('creator') )
		{
			$FaceTable->set_data('creator',$this) ;
		}
					
		return $FaceTable ;
	}




}

?>